1
優化建構流程:理解釋出設定檔
AI034Lesson 14
00:00

在 Rust 語言中, 釋出設定檔 是預先定義的組態,讓開發者能控制「編譯時間」與「執行時期效能」之間的權衡。 編譯時間 以及 執行時期效能透過調整這些設定,你可以根據當前的工作流程(例如快速迭代或正式部署)來客製化編譯器的行為。

1. 開發環境與釋出環境的設定檔對比

Cargo 具有兩個主要的設定檔: dev (由 cargo build使用)以及 release (由 cargo build --release。開發環境設定檔以快速編譯為目標,但會導致程式碼執行較慢;而釋出環境設定檔則花費更多時間優化機器碼,以達到最高的執行效率。

2. 優化層級設定

這項 opt-level 設定是控制效能的主要方式,其數值範圍從 0 到 3:

  • 0: 不進行任何優化。編譯速度快,但程式碼執行緩慢。(開發環境預設值)
  • 1-2: 中等程度的優化。
  • 3: 積極的優化。編譯時間長,但程式碼執行最快。(釋出環境預設值)
  • 「s」或「z」: 專注於縮小二進位檔案大小,而非執行速度。
設定檔預設優化層級目標
dev0快速迭代
release3生產環境速度

3. 自訂設定檔

你可以在你的 Cargo.toml中覆蓋這些預設值。當未優化的程式碼過於遲緩,無法用於測試(例如在大型模擬中),但完整釋出版本又耗時太久時,此功能特別實用。

[profile.dev]
opt-level = 1 # 比第 0 層快,同時仍保有快速編譯的特性
main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>